package com.example.server.web.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.server.web.domain.Student;
import com.example.server.web.domain.SysUser;
import com.example.server.web.domain.dto.StudentDto;
import com.example.server.web.domain.dto.StudentParamDto;
import com.example.server.web.domain.vo.StudentVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author 作者
 * @since 2023-04-04
 */
@Mapper
public interface StudentMapper extends BaseMapper<Student> {

    //返回班级学生列表
    List<StudentDto> showClassStudent(@Param("classId") Long classId,@Param("username") String username,@Param("name") String name, @Param("current") Integer current, @Param("limit") Integer limit);

    //返回班级学生总数
    Long getTotal(@Param("classId") Long classId,@Param("username") String username,@Param("name") String name);

    /**
     * 获取学生的分页数据
     * @param i
     * @param limit
     * @param studentParamDto
     * @return
     */
    List<StudentVo> getPage(@Param("current") int i,@Param("limit") Integer limit,@Param("dto") StudentParamDto studentParamDto);

    /**
     * 获取学生总条数
     * @param studentParamDto
     * @return
     */
    Long getPageTotal(@Param("dto")StudentParamDto studentParamDto);
}
